﻿
$(document).ready(function () {
    $("#tabs").tabs();
    $(function () {
        $("#modalCantidadProducto").dialog({
            autoOpen: false,
            width: 290,
            height: 210,
            buttons: [
                {
                    text: "Cancelar",
                    click: function () {
                        $(this).dialog("close");
                    }
                },
                {
                    text: "Aceptar",
                    click: function () {
                        var id = $('#id').val();
                        var nom = $('#nom').val();
                        var pre = $('#pre').val();
                        var can = $('#producto_cantidad').val();
                        fnAgregarProducto(id, nom, pre, can);
                        $(this).dialog("close");
                    }
                }
            ]
        });
    });

    $("#btn_modal_buscar_productos").click(function (event) {
        spProductoBuscarXPresentacion();
    });

    fnLlenarSelect("#almacen","wsPedido.asmx/almacenLista",
        "{}","item.alm_id","item.alm_nombre");
    
});

function spProductoBuscarXPresentacion() {
    fnDataTableAjax(
       "#tbProductosBusqueda",
       "wsPedido.asmx/spProductoBuscarXPresentacion",
       "{'idAlmacen': '" + $("#almacen").val() + "', 'prmPresentacion':'" + $("#producto_buscar_nombre").val() + "'}",
       [
           { "mData": "pro_id" },
           { "mData": "pro_presentacion" },
           //{ "mData": "pro_uniMedida" },
           { "mData": "precio.pre_precio" },
           { "mData": "linea.lin_descripcion" },
           { "mData": "stock" },
           {
               "mData": null, "mRender": function (aData) {
                   //var txt = JSON.stringify(aData);
                   //console.log(aData.pro_id + ',' + aData.precio.pre_precio + ',"' + aData.pro_presentacion);
                   return '<button onclick="agregar(\'' +aData.pro_presentacion + '\',' + aData.precio.pre_precio + ',' + aData.pro_id + ')">Agregar</button>';
                   //return '<a href="#" onclick=llamarLink('+ txt+')>Agregar</a>';
               }
           }

       ])
}

function agregar(nom, pre, id) {
    $('#id').val(id);
    $('#nom').val(nom);
    $('#pre').val(pre);
    $("#modalCantidadProducto").dialog("open");
}

function fnAgregarProducto(id, nom, pre,can) {
    $.ajax({
        type: "POST",
        url: "wsContizacion.asmx/agregarProducto",
        data: '{"id":"' + id + '", "nom":"' + nom + '","pre":"' + pre + '","can":"' + can + '"}',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        success: function (response) {
            var lst = response.d;
            listaDetalleProductos();  
        },
        failure: function (msg) {
            alert(msg);
        }
    });
}
    
$("#txtRazSocialCliente").autocomplete({    
     source: function (request, response) {
        $.ajax({
            url: "wsPedido.asmx/spClienteXRazonSocial",
            data: "{ 'prmRazSocial': '" + request.term + "' }",
            dataType: "json",
            type: "POST",
            contentType: "application/json; charset=utf-8",
            success: function (data) {
                var lstCliente = data.d;
                response($.map(lstCliente, function (cliente) {
                    return {
                        value: cliente.cli_razonSocial,
                        cli_nic: cliente.cli_rucdni,
                        cli_id: cliente.cli_id
                    }

                }))
            },
            error: function (XMLHttpRequest, textStatus, errorThrown) {
                alert(textStatus);
            }
        });
    },
    select: function (e, i) {
        $("#txtRucDni").val(i.item.cli_nic);
        $("#idCliente").val(i.item.cli_id);
    },
    minLength: 2
});

function listaDetalleProductos() {
    fnDataTableAjax(
       "#tbDetalleProducto",
       "wsContizacion.asmx/listaDetalleProductos",
       "{}",
       [
           { "mData": "producto.pro_id" },
           { "mData": "producto.pro_presentacion" },
           { "mData": "cotDet_precio" },
           { "mData": "cotDet_cantidad" },
            {
                "mData": null, "mRender": function (aData) {
                    return aData.cotDet_precio * aData.cotDet_cantidad;
                }
            },
           {
               "mData": null, "mRender": function (aData) {                 
                   return '<a href="#">Eliminar</a>';
               }
           }

       ])
}

